/*
*

	package: rewords-api-server
	filename: entity
	author: diogo@gmail.com
	time: 2023/3/15 11:12

*
*/
package entity

import "github.com/gogf/gf/v2/os/gtime"

// AdminMenu is the golang structure for table admin_menu.
type AdminMenu struct {
	Id             int64       `bson:"id" json:"id"             description:"菜单ID"`
	Pid            int64       `bson:"pid" json:"pid"            description:"父菜单ID"`
	Title          string      `bson:"title" json:"title"          description:"菜单名称"`
	Name           string      `bson:"name" json:"name"           description:"名称编码"`
	Path           string      `bson:"path" json:"path"           description:"路由地址"`
	Icon           string      `bson:"icon" json:"icon"           description:"菜单图标"`
	Type           int         `bson:"type" json:"type"           description:"菜单类型（1目录 2菜单 3按钮）"`
	Redirect       string      `bson:"redirect" json:"redirect"       description:"重定向地址"`
	Permissions    string      `bson:"permissions" json:"permissions"    description:"菜单包含权限集合"`
	PermissionName string      `bson:"permission_name" json:"permission_name" description:"权限名称"`
	Component      string      `bson:"component" json:"component"      description:"组件路径"`
	AlwaysShow     int         `bson:"always_show" json:"always_show"     description:"取消自动计算根路由模式"`
	ActiveMenu     string      `bson:"active_menu" json:"active_menu"     description:"高亮菜单编码"`
	IsRoot         int         `bson:"is_root" json:"is_root"         description:"是否跟路由"`
	IsFrame        int         `bson:"is_frame" json:"is_frame"        description:"是否内嵌"`
	FrameSrc       string      `bson:"frame_src" json:"frame_src"       description:"内联外部地址"`
	KeepAlive      int         `bson:"keep_alive" json:"keep_alive"      description:"缓存该路由"`
	Hidden         int         `bson:"hidden" json:"hidden"         description:"是否隐藏"`
	Affix          int         `bson:"affix" json:"affix"          description:"是否固定"`
	Level          int         `bson:"level" json:"level"          description:"关系树等级"`
	Tree           string      `bson:"tree" json:"tree"           description:"关系树"`
	Sort           int         `bson:"sort" json:"sort"           description:"排序"`
	Remark         string      `bson:"remark" json:"remark"         description:"备注"`
	Status         int         `bson:"status" json:"status"         description:"菜单状态"`
	CreatedAt      *gtime.Time `bson:"created_at" json:"created_at"      description:"创建时间"`
	UpdatedAt      *gtime.Time `bson:"updated_at" json:"updated_at"      description:"更新时间"`
}
